package com.thz.common.dto.svg;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 文件转SVG响应DTO
 * 
 * @author THZ
 * @date 2025
 */
@Data
public class ConversionFileToSvgResponseDTO {
    
    /**
     * 转换记录ID
     */
    private Long id;
    
    /**
     * 原始文件名
     */
    private String originalFilename;
    
    /**
     * 原始文件大小（字节）
     */
    private Long originalFileSize;
    
    /**
     * 原始文件类型
     */
    private String originalFileType;
    
    /**
     * SVG文件名
     */
    private String svgFilename;
    
    /**
     * SVG文件大小（字节）
     */
    private Long svgFileSize;
    
    /**
     * SVG宽度
     */
    private Integer svgWidth;
    
    /**
     * SVG高度
     */
    private Integer svgHeight;
    
    /**
     * SVG文件访问URL
     */
    private String svgUrl;
    
    /**
     * SVG文件下载URL
     */
    private String downloadUrl;
    
    /**
     * 转换状态：0-待转换，1-转换中，2-转换成功，3-转换失败
     */
    private Integer conversionStatus;
    
    /**
     * 错误信息
     */
    private String errorMessage;
    
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    
    /**
     * 压缩率（百分比）
     */
    private Double compressionRatio;
    
    /**
     * 格式化的原始文件大小
     */
    private String originalFileSizeFormatted;
    
    /**
     * 格式化的SVG文件大小
     */
    private String svgFileSizeFormatted;
}


